# $Id: PKGBUILD 169337 2012-10-19 21:33:57Z thomas $
# Maintainer: Thomas Baechler <thomas@archlinux.org>
pkgname=ppp
pkgver=2.4.5
pkgrel=5
pkgdesc="A daemon which implements the Point-to-Point Protocol for dial-up networking"
arch=(i686 x86_64) 
url="http://www.samba.org/ppp/"
license=('custom:GPL/BSD')
groups=('base')
depends=('glibc' 'libpcap>=1.0.0')
backup=(etc/ppp/{chap-secrets,pap-secrets,options,ip-up,ip-down})
source=(ftp://ftp.samba.org/pub/ppp/ppp-${pkgver}.tar.gz
        options
        pon
        poff
        ppp
        plog
        pon.1
        ip-up
        ip-down
        ip-up.d.dns.sh
        ip-down.d.dns.sh
        ipv6-up
        ipv6-down
        ipv6-up.d.iface-config.sh
        ppp.systemd)
md5sums=('4621bc56167b6953ec4071043fe0ec57'
         '7a9259a8f038073eeea7e4552ff1849f'
         '48c024f73a80c8b69c4def22f86902cc'
         '2d811f8470ccdea3b8c4505a438483e9'
         '7561c73b557292d5ba1a9c5dbd270fde'
         '86cdaf133f7a79fb464f02d83afc7734'
         '44cc662ba9aa61dd9add3ddd4c5ded57'
         'e4beb16ed600b61336d50b2bd2df7cd5'
         '529b924f644f80cf30d72a966abc7419'
         '4a074d74c29625b254a1db720cb87b99'
         '8d1be5af8e46393ba6eb273377831e38'
         '4cbd0a9af01c27067450ec7d3f5fa673'
         'b75c2fbc4afa9f2d8108b680c88c7036'
         '9dde53aa5a931ebe1c7e3469199777c5'
         'fafead5c9d66d0574e6f0a2e5f4d4631')

build() {
  cd "${srcdir}/${pkgname}-${pkgver}"
  # fix CFLAGS
  # -D_GNU_SOURCE is needed for IPv6 to work apparently
  export CFLAGS="$CFLAGS -D_GNU_SOURCE"
  sed -i "s:-O2 -pipe -Wall -g:${CFLAGS}:" pppd/Makefile.linux
  sed -i "s:-g -O2:${CFLAGS}:" pppd/plugins/Makefile.linux
  sed -i "s:-O2:${CFLAGS}:" pppstats/Makefile.linux
  sed -i "s:-O2 -g -pipe:${CFLAGS}:" chat/Makefile.linux
  sed -i "s:-O:${CFLAGS}:" pppdump/Makefile.linux

  # enable active filter
  sed -i "s:^#FILTER=y:FILTER=y:" pppd/Makefile.linux
  # enable ipv6 support
  sed -i "s:^#HAVE_INET6=y:HAVE_INET6=y:" pppd/Makefile.linux
  # Enable Microsoft proprietary Callback Control Protocol
  sed -i "s:^#CBCP=y:CBCP=y:" pppd/Makefile.linux 
  
  # Fix build error with recent kernels
  rm include/linux/if_pppol2tp.h 

  ./configure --prefix=/usr
  make 
}

package() {
  cd "${srcdir}/${pkgname}-${pkgver}"
  make DESTDIR="${pkgdir}/usr" install 
  install -D -m644 ../options "${pkgdir}/etc/ppp/options"
  install -D -m755 ../ip-up   "${pkgdir}/etc/ppp/ip-up"
  install -D -m755 ../ip-down "${pkgdir}/etc/ppp/ip-down"
  install -d -m755 "${pkgdir}/etc/ppp/ip-up.d"
  install -d -m755 "${pkgdir}/etc/ppp/ip-down.d"
  install -m755 ../ip-up.d.dns.sh   "${pkgdir}/etc/ppp/ip-up.d/00-dns.sh"
  install -m755 ../ip-down.d.dns.sh "${pkgdir}/etc/ppp/ip-down.d/00-dns.sh"
  install -D -m755 ../ipv6-up   "${pkgdir}/etc/ppp/ipv6-up"
  install -D -m755 ../ipv6-down "${pkgdir}/etc/ppp/ipv6-down"
  install -d -m755 "${pkgdir}/etc/ppp/ipv6-up.d"
  install -d -m755 "${pkgdir}/etc/ppp/ipv6-down.d"
  install -m755 ../ipv6-up.d.iface-config.sh "${pkgdir}/etc/ppp/ipv6-up.d/00-iface-config.sh"
  install -D -m755 ../pon  "${pkgdir}/usr/bin/pon"
  install -D -m755 ../poff "${pkgdir}/usr/bin/poff"
  install -D -m755 ../plog "${pkgdir}/usr/sbin/plog"
  install -D -m600 etc.ppp/pap-secrets  "${pkgdir}/etc/ppp/pap-secrets"
  install -D -m600 etc.ppp/chap-secrets "${pkgdir}/etc/ppp/chap-secrets"
  install -D -m755 ${srcdir}/ppp "${pkgdir}/etc/rc.d/ppp"
  install -D -m644 ${srcdir}/pon.1 "${pkgdir}/usr/share/man/man1/pon.1"
  install -d -m755 "${pkgdir}/etc/ppp/peers" 
  chmod 0755 "${pkgdir}/usr/lib/pppd/${pkgver}"/*.so
  install -D -m644 "${srcdir}"/ppp.systemd "${pkgdir}"/usr/lib/systemd/system/ppp@.service
}
